การควบคุมโปรแกรมเป็นจุดเปลี่ยนจากคำสั่งที่ทำงานแบบลำดับตรงไปเรื่อยๆ มาสู่ ตรรกะแบบไดนามิกและไม่เป็นเส้นตรงแทนที่จะใช้คำสั่งที่ต่อเนื่องกันตามลำดับ คอมพิวเตอร์จะใช้กลไกในการตัดสินใจว่าจะข้าม ทำซ้ำ หรือแยกไปยังเส้นทางอื่นตามข้อมูลในเวลาจริง
1. การไหลแบบเส้นตรง กับ การไหลแบบไดนามิก
ในสคริปต์แบบเส้นตรง คำสั่งจะดำเนินไปตามเส้นทางเดียว แต่การควบคุมโปรแกรมจะนำเอา 'จุดตัดสินใจ' (Decision Nodes) มาใช้ โดยมองข้อมูลของคุณเป็น วัตถุชิ้นเดียวโดยสถานะเฉพาะของข้อมูลนั้นจะกำหนดเส้นทางตรรกะ ซึ่งการเปลี่ยนแปลงโครงสร้างนี้ทำให้สคริปต์สามารถจัดการกับข้อมูลที่ไม่แน่นอนได้อย่างเชื่อถือได้
2. หลักการรวมตัว
เป้าหมายสุดท้ายของการควบคุมการไหลคือ การรวมตัวไม่ว่าจะซับซ้อนเพียงใด หรือผ่านเส้นทางตรรกะภายในกี่เส้นทาง ผลรวมสุดท้ายของ ผลรวม ของกระบวนการต้องนำไปสู่ผลลัพธ์ที่คาดการณ์ได้ และปราศจากข้อผิดพลาด ซึ่งสอดคล้องกับเป้าหมายเดิมของโปรแกรม
3. ตัวอย่าง: ตรรกะด้านการเงิน
พิจารณาโปรแกรมอัตโนมัติที่ประมวลผลรายการธุรกรรม แทนที่จะแค่บวกเลข โปรแกรมจะตรวจสอบทุกธุรกรรม: ถ้า (ยอดคงเหลือ + ธุรกรรม < 0) แล้ว ให้เปลี่ยนไปยังเส้นทางข้อผิดพลาด; ถ้าไม่ใช่ ให้ดำเนินการคำนวณ ยอดคงเหลือสุดท้ายคือผลลัพธ์ที่เชื่อถือได้จากการดำเนินงานที่ควบคุมไว้